This invention relates to modem communications and, more particularly, to proactive shutdown of inactive modems of an Internet Service Provider.
In computers, as in real life, use of a resource often comes at a cost that is related to the duration of use. A decision to stop using the resource saves money for the duration that use is stopped, but the action of stopping or starting the use (or both) often presents an extra expense.
A simple illustration of this truism is the light bulb. Turning off a light bulb when leaving a room saves the cost of electricity that was not used. However, the action of turning the light bulb on again introduces a stress on the bulb""s filament that will cause the light bulb to burn up sooner and be in need of replacing. A question arises as to whether turning off a light bulb for a some given period of time saves more money in unused electricity than the extra incremental light bulb replacement expense that must be accounted for. Intuitively, the answer to this question depends on the duration of the period of time.
In the computer arts, a similar question arises in connection with operating various equipment, such as the motor that spins the storage disk of a hard drive. Continuing to operate the motor while access is not demanded represents a cost of electricity. Stopping and starting the hard drive motor saves some electricity, but increases the wear-and-tear on the motor. In the case of the hard drive, however, a much more important consideration is poor access time to stored data immediately after the motor is started. Adaptive disk spin-down has been disclosed in Fred Douglis, P. Krishnan, and Brian Bershad, xe2x80x9cAdaptive disk spin-down policies for mobile computers,xe2x80x9d Computing Systems, 8(4):381-413, Fall 1995 (and U.S. Pat. No. 5,493,670).
In Internet communication employing dial-up modems, the situation is the same.
FIG. 1 presents a block diagram of one arrangement where modems are used to communicate with an Internet Service Provider (ISP). In this arrangement, user 100 dials a given number through its local modem 101 and, in response thereto, is connected through Public Switched Network (PSN) 10 to a distributing router 11. Router 11 is coupled to a bank of modems 20-1, 20-2, . . . 20-N, whence the modems are connected to ISP processor 30. When user 100 reaches distributing router 11 the router selects an idle modem for the connection to processor 30, for example, modem 20-2. Other users, such as user 110, can also connect to ISP processor 30 by dialing the same number. When user 110 reaches distributing router 11, that user is also connected to an idle modem, for example, modem 20-1. The connection between modems (such as modem 101 and modem 20-2) is a two-way connection, in the sense that information flows in both directions.
FIG. 2 presents a block diagram of another arrangement which, in addition to the elements included in FIG. 1, includes a cable 40 that connects ISP processor 30 to a plurality of users through a separate cable modem associated with each connected user (e.g., modems 102 and 112). In this arrangement, the conventional modems (101 and 111) are employed for sending information to modems 20-2 and 20-1, and then to processor 30, whereas the cable modems (102 and 112) are employed for sending information from processor 30 to users 100 and 110.
Typically, cable 40 is a channel that is capable of high data rates which allows the ISP to maintain a continuous, high bandwidth, connection to each of the users.
As indicated above, when a modem from bank 20 is assigned to a particular subscriber connection, but the subscriber is idle, the inactive modem represents a wasted resource. Some ISPs, therefore, employ a time-out circuit that measures the duration of the idle period of each modem in bank 20 and, at the expiration of some preselected period, such as fifteen minutes or half an hour, the connection to an inactive modem in bank 20 is dropped.
From the provider""s viewpoint, a disconnected user represents a recovered resourcexe2x80x94a modem that can be used for another user. From the user""s viewpoint, if the extended idle period is the result of the user simply attending to other matters, some money can be saved if the user""s access costs are sensitive to connection time. However, the xe2x80x9ccostxe2x80x9d in time and convenience of the user having to reconnect following such automatic idleness-caused disconnection is rather high. With today""s technology, the process of reconnecting can take up as much as 40 seconds, or more, and may engender a rather high level of dissatisfaction with users who wish to not have been disconnected. Moreover, in most modem connections the ISP provides a temporary IP address for the connection. If the modem connection is terminated, there is no guarantee that upon reconnection the same IP address will be given; and if a different IP address is assigned, then existing TCP connection using the older IP address cannot reach the disconnected user and would be terminated.
A balance between competing goals is struck, in accordance with the principles of this disclosure with an adaptive time-out regimen. Each user that is connected to the ISP is checked to determine whether a recent connection pattern is found for the user within the ISP""s processor. A time-out threshold is then selected for the user based on this connection pattern. Specifically, the time interval between the last disconnection by the user and the time of reconnection is evaluated. When this time interval is shorter than a preselected threshold (which may be sensitive to the identity of the uses and which may be sensitive to whether the user voluntarily disconnected or not), then the time-out threshold is increased. When this time interval is longer than the preselected threshold, then the time-out threshold is decreased. Typically, when the time-out threshold is decreased, it is decreased by a significantly smaller amount that the amount by which it is increase, when it is increased.